The amount of available digital information is exploding and much of it is made available across computer networks. Consumers of information often receive digital information in messages that are delivered according to some messaging pattern. In a request-reply pattern, the consumer sends a specific request for information of interest, and a source of the information responds to the request with the information. In some cases this involves use of a search engine that is designed to search the source or multiple possible sources for the information of interest. This request-reply pattern usually requires repeating the request each time the consumer desires more or new information.
Another messaging pattern referred to as publish-subscribe is designed to ease this problem by disseminating information only to interested users. A publish-subscribe system facilitates an information push paradigm in which users express long-term interest in (“subscribe to”) information objects continuously released (“published”) by some external agent. The success of a large scale publish and subscribe system relies both on the efficient identification of interested users for each information object and on the prompt delivery of the object to all interested users. In the environment of a large number of changing subscriptions for events in a high volume stream of events, traditional publish-subscribe systems often have trouble keeping pace, requiring an undesirable amount of computing resources.
Therefore it would be desirable to have a system and method that takes into account one or more of the issues discussed above, as well as other possible issues.